Device, Methods, and User Interface for Providing Optimized Entry of Alphanumeric Text

ABSTRACT

The present invention includes a device, method, and user interface for providing optimized entry of alphanumeric text. In one form, a method for providing selectable characters within a user interface includes determining an operating mode of a communication device and receiving an input associated with a selected input key. The method determines a group of characters associated with the selected key based on the operating mode and displays the group of characters within the user interface. The user interface may display a first character of the group of characters within a first portion of the user interface and the group of characters proximal to the first character within a second portion of the user interface.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation of U.S. application Ser. No.14/174,353 filed Feb. 6, 2014 and entitled Device, Methods, and UserInterface for Providing Optimized Entry of Alphanumeric Text” which is acontinuation of Ser. No. “13/672,201 filed Nov. 8, 2012 and entitled“Device, Methods, and User Interface for Providing Optimized Entry ofAlphanumeric Text”, now U.S. Pat. No. 8,666,457 issued Mar. 4, 2014which is a continuation of U.S. application Ser. No. 13/280,948 filedOct. 25, 2011 and entitled “Device, Methods, and User Interface forProviding Optimized Entry of Alphanumeric Text” now U.S. Pat. No.8,311,588 issued Nov. 13, 2012 which is a continuation of U.S.application Ser. No. 12/577,544 filed Oct. 12, 2009 and entitled“Device, Methods, and User Interface for Providing Optimized Entry ofAlphanumeric Text”, now U.S. Pat. No. 8,078,231 which is a continuationof U.S. application Ser. No. 11/101,918 filed Apr. 8, 2005 and entitled“Device, Methods, and User Interface for Providing Optimized Entry ofAlphanumeric Text”, now U.S. Pat. No. 7,603,142 which is a continuationof U.S. application Ser. No. 09/741,690 filed Dec. 19, 2000 and entitled“Device, Methods, and User Interface for Providing Optimized Entry ofAlphanumeric Text”, now U.S. Pat. No. 6,882,869, issued Apr. 19, 2005.

TECHNICAL FIELD OF THE INVENTION

The present invention generally relates to the field of communication,and more particularly to a device, method and user interface forproviding optimized entry of alphanumeric text.

BACKGROUND OF THE INVENTION

Current technologies exist for inputting characters within userinterfaces which have a limited number of keys for entering characterstrings. One such solution presently used includes a T9 input where theuser interface guesses the best match of possible characters based on astored list of words or names. For example, a user may enter a characterwithin a user interface and a selectable list of names starting with thecharacter may be displayed within the user interface.

Another conventional solution deployed by present systems includes“chording”, a method in which every letter takes two keystrokes to inputa character. For example, to enter a character “A” a user would have topress the “2” key and then any key on the top row (i.e. 1,2,3).Likewise, to enter a “C” a user would press the “2” key and then any keyfrom the third row (i.e. 7,8,9). Other variations of chording mayinclude entering characters based on position by selecting theappropriate number representing the characters position (i.e. 1,2,3 or4).

SUMMARY OF THE INVENTION

In accordance with the teachings of the present invention, a device,methods, and user interface for providing optimized entry ofalphanumeric text are disclosed. According to one aspect of theinvention, a method for providing selectable characters within a userinterface is disclosed. The method includes determining an operatingmode of a communication device and receiving an input associated with aselected input key. The method also includes determining a group ofcharacters associated with the selected key based on the operating modeand displaying the group of characters within the user interface.

According to another aspect of the invention, a communication device isdisclosed. The communication device includes a processor module operableto determine a group of characters associated with an operating mode inresponse to an input and a memory coupled to the processor for storinginformation associated with displaying the group of characters. Thedevice also includes a user interface operable to display selectablecharacters associated with the operating mode and an input deviceoperably coupled to the user interface. The input device provides aninput to select the group of characters.

It is a technical advantage of certain embodiments of the invention toprovide a simplified user interface for inputting character strings. Theuser interface requires minimal input by a user to display and selectalphanumeric text for selecting communication addresses. For example,one embodiment of the invention provides a cursor which may besubstantially centered about a group of selectable characters. The groupof characters may be displayed in a segmented manner to enhanceviewability of alphanumeric text within a user interface. The userinterface may display a group of characters based on a selected key andfurther display a bubble help cursor positioned relative to ahighlighted character within the group of characters. The bubble helpcursor includes the highlighted character and a user may scroll thegroup of characters using a bubble help cursor that displays the next orprevious character within the group of characters.

It is a further technical advantage of certain embodiments of theinvention to provide a user interface having one or more display modesfor displaying characters within a user interface. One such display modemay include displaying a group of characters horizontally within a userinterface and further displaying a selection cursor centered over thegroup of characters. The cursor displays a highlighted character withinthe group of characters and a user may scroll the group of charactersusing the cursor to display selectable characters within the group ofcharacters. In this manner, optimized viewing of selectable charactersmay be obtained allowing efficient access to alphanumeric textassociated with a selected key.

It is another technical advantage of certain embodiments of theinvention to provide a learned time-out sequence for highlighting andselecting characters displayed within a user interface. The time-outsequence may be based on a algorithm that calculates a user specificutilization period based on user interaction with the user interface.The time-out sequence may adapt to a specific user and calculate aninteraction period associated with the user interface based on a userselecting and/or scrolling characters or alphanumeric text displayedwithin the user interface.

It is a further technical advantage of certain embodiments of theinvention to provide a user interface which displays alphanumeric textbased on a communication mode. The communication device may be operatedin several different communication modes using different communicationreference types or protocols which may include a session initiationprotocol (SIP), Internet Protocol (IP), address domain names, telephonenumbers, Uniform Resource Locators (URLs), Uniform Resource Identifiers(URIs), or any other protocol or communication reference type.Alphanumeric text may be displayed within a user interface based on aselected mode providing a user access to mode specific characters forselecting communication addresses.

Other technical advantages are readily apparent to one skilled in theart from the attached figures, description, and claims.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 illustrates one embodiment of a communication device havingselectable operating modes according to teachings of the presentinvention;

FIG. 2 illustrates one embodiment of a flow diagram of a method fordisplaying alphanumeric text within a user interface of thecommunication device;

FIG. 3 illustrates one embodiment of the user interface for displayingselectable alphanumeric text;

FIG. 4 illustrates several display modes for displaying alphanumerictext within the user interface; .and

FIG. 5 illustrates one embodiment of a flow diagram of a method fordisplaying and selecting alphanumeric text within the user interface.

DETAILED DESCRIPTION OF THE INVENTION

A communication device such as a network phone, cellular phone, SIPphone, etc. may include a user interface operable to displayalphanumeric text representing communication addresses such as telephonenumbers, .URL references, network addresses or other communicationaddresses or references for initiating communication with a network. Oneembodiment of a communication device may include a user interface and akeypad that provides access to selectable characters which may includealphanumeric text. The communication device may be operated in one ormore modes such as a conventional analog mode, a voice-over-URL mode, aURL-over-voice mode, a URL mode, or other modes which may be used bycommunication devices. As such, each key within the keypad may beassociated with a group of selectable characters which are displayablebased on an operating mode of the communication device. Alphanumerictext for an operating mode is displayable to a user in a visuallyefficient manner allowing a user to scroll, identify, manage, author,etc. alphanumeric text via a user interface which may have limited inputcapabilities.

The communication device includes a user interface for displayingalphanumeric text based on a communication mode in response to selectinga key. For example, a user may want to enter a character, such as aperiod (e.g. “.”) as a portion of a URL communication address. As such,the communication device may receive an input from the user via areduced set keypad (e.g. 10-key keypad) and display a group ofcharacters based on the selected key and a communication mode. In oneform, the group of characters may be horizontally displayed and mayinclude a cursor substantially centered over the horizontally displayedgroup of characters. A user may scroll the group of characters and thecursor may update and display the next character within the group ofcharacters. In this manner, a communication device may displayalphanumeric text in a visually efficient manner to allow a user toscroll and select a character from a group of characters with minimalinput and/or navigation between characters and/or operating modes of acommunication device.

FIG. 1 illustrates a communication device having selectable operatingmodes. The communication device, shown generally at 100, includes a userinterface 101 for displaying information such as communicationaddresses, names, alphanumeric text, soft buttons, and the like. Userinterface 101 includes several selectable entries 103 which may displaycommunication addresses such as telephone numbers and an associatedcommunication mode. Each selectable entry may include an associatedselection button operable to allow a user to select a communicationaddress entry. Communication device 100 also includes a status line 110for displaying alphanumeric text based on an operating mode ofcommunication device 100. Communication device 100 also includes adisplay line 102 for displaying a currently selected communicationaddress.

User interface 101 also includes a plurality of soft-keys havingassociated selection buttons. For example, user interface 101 maydisplay a redial soft-key 104 and a selection button 104 a, a modesoft-key 105 and a selection button 105 a, a new call soft-key 106 and aselection button 106 a, and a more soft-key 107 and a selection button107 a to display additional soft-keys and associated functions. Forexample, soft-key may be used to display several different types ofselectable functions which may be accessed and displayed within userinterface 101 and navigated by selecting an associated function button.In this manner, several functions associated with communication device100 may be accessed and selected by a user.

Communication device 100 also includes a keypad 108, which includes aplurality of keys for providing access to alphanumeric text. Forexample, the “2” key may provide access to the characters “a, b, c, 11the “3” key may provide access to the characters “d, e, f” etc. Each keymay provide access to alphanumeric text based on an operating mode ofcommunication device 100 thereby allowing specific groups of charactersto be associated with a selectable key. In this manner, a numeric keypadhaving a group of alphanumeric text associated-with each key may be usedby communication device 100. Communication device 100 further includes ascroll button 109 operable to scroll information displayed within userinterface 101.

During use, a user may select an operating mode, such as a desiredcommunication mode, and author a communication address usingalphanumeric text associated with selectable keys within keypad 108. Forexample, a voice-over-URL mode (“V/U”) and a horizontal display mode maybe selected for authoring communication addresses using user interface101. For example, user interface 101 may horizontally display thecharacters “a, b, c” in response to a user selecting the “2” key onkeypad 108. Communication device 100 may also highlight a characterwithin the displayed group of characters to identify a selectablecharacter within the group of characters. A user may then select the “2”key or scroll button 109 to access an adjacent character within thegroup of characters displayed within user interface 101.

In one embodiment, communication device 100 may calculate a time-outperiod associated with a user interacting with keypad 108. For example,a user may select a key within keypad 108 and further select the samekey to access one of the characters within the group of charactersdisplayed within user interface 101. As a user repeatedly selects thesame key, a time-interval may be determined between successive keyselections and a time period may be calculated using an algorithm. Assuch, communication device 100 may “learn” a time-out period for thecurrent user and automatically scroll, select, update, highlight, etc.characters displayed within user interface 101 thereby reducing inputrequired by a user.

For example, a user may typically scroll a displayed character after apredetermined period of time (e.g., average scroll time interval is 1.5seconds). As such, communication device 100 may determine the amount oftime a user takes to scroll a character and may automatically scroll tothe next character for a user based on a time-out period for the userelapsing. In one embodiment, communication device 100 may use astatistical analysis to calculate a time-out period for specific users.A time-out period may be stored within a parameter identifying aspecific user.

Upon a user providing minimal interaction with communication device 100,a parameter associated with the current user may be identified and usedto provide automatic entry, selection, scrolling, access, etc. ofalphanumeric text displayed within user interface 101. For example, oneor more users may have access to communication device 100. Communicationdevice 100 using learned time-out period for scrolling, selecting,entering, etc. alphanumeric text and may determine a parameter having atime-out period for one of the plurality of users based on theperiodicity of the user inputting, scrolling, selecting, interacting,etc. with communication device 100. In one embodiment, a display modefor displaying characters within user interface 101 may be provided. Auser may select a horizontal mode for displaying alphanumeric textwithin user interface 101. Selectable characters may be horizontallydisplayed based on a user selecting a key within key pad 108. A cursormay also be displayed and positioned over the group of characters in asubstantially centered manner. The cursor may display a highlightedcharacter within the group of characters and may update as a userscrolls the group of characters. In this manner, a cursor may be used asa “bubble-help” cursor providing visually efficient access to selectablecharacters within user interface 101.

FIG. 2 illustrates a flow diagram of a method for displayingalphanumeric text within a user interface of a communication device. Themethod may be deployed using the communication device illustrated inFIG. 1 or other devices, systems, user interfaces, etc. which may usethe method of FIG. 2. The method begins generally at step 200. At step201, the method determines a mode associated with operating acommunication device. For example, a communication mode may be selectedfor accessing alphanumeric text which may be specific for that mode. Inother embodiments, a display mode may be determined such as verticaldisplay mode, horizontal display mode,—horizontal segmented displaymode, horizontal segmented with active positionable cursor display mode,or any combination of operating modes for accessing selectablealphanumeric text. Although mode selection at step 201 contemplates aninitial determination, the user or device 100 can change the mode on acharacter-by-character basis. For example, a user can select anuppercase mode on a per character basis. Also device 100 canautomatically adjust the input mode by recognizing the context of theentry. For example, when in URL mode, device 100 may recognize—that theuser is entering an IP address, and automatically set the modeaccordingly. This change of mode may be done automatically or manuallybefore or during the input of an entry in device 100.

Upon determining a mode, the method then proceeds to step 202 where themethod receives an input in response to selecting a key. For example, auser may select a key on a keypad corresponding to the “6” key. This keyhas multiple associated characters. If the user selects a key with onlyone associated character, such as the “1” key, then the method may enterthat character immediately and wait to receive the next key selection atstep 202.

If the selected key is associated with more than one character, themethod proceeds to step 203 where a group of characters associated withthe selected key is displayed within a user interface based on thedetermined mode. For example, a communication device may have a defaultdisplay mode for displaying characters corresponding to a selected key.A group of characters corresponding with a selected key may be displayedbased on the default display mode. For example, if the key 6 is selectedthe group “m n o 6” may be displayed based on the selected key and adisplay mode. In one embodiment, characters may be displayed in ahorizontal manner with a positionable cursor displayed above the groupof characters. The cursor may include the first character within thegroup of characters associated with the selected key.

Upon displaying the characters, the method proceeds to step 204 wherethe method determines if a user selects the same key. In the exampleabove, the character “m” of the group of characters may be highlightedand a user may select the 6 key or a scroll button to move the cursor toan adjacent character within the group of characters. If a user selectsthe same key or a scroll button, the method proceeds to step 207 wherethe method determines a time interval between the first time the 6 keywas selected and the second time the 6 key was selected. The method thenproceeds to step 208 where the method calculates a new time-out periodbased on the determined time interval. For example, the method mayemploy an algorithm to calculate an average time-out period for theuser. The method then proceeds to step 209 where the method updates theuser interface in response to the selected key. For example, the nextcharacter within the group of characters may be highlighted and thecursor may be updated to display the next character. The method thenproceeds to step 204 where the method determines if the same key wasselected.

In one embodiment, a cursor may be positioned along side of a group ofcharacters vertically displayed. The cursor may be centered along thegroup of characters and may display a highlighted character within thegroup of characters. As such, a user may access, scroll, select,interact, etc. the group of characters displaying within the userinterface.

If at step 204 the user does not select the same key, the methodproceeds to step 205 where the method determines if an input time-outperiod has elapsed. For example, a time-out period of 1.2 seconds mayelapse without a user selecting a character. If the time-out period haselapsed, the method proceeds to step 206 where the highlighted characteris entered and then to step 202 where the method repeats. If at step 205the time-out period did not elapse, the method proceeds to step 204where the method determines if the same input key is selected.

FIG. 3 illustrates a user interface for displaying selectablealphanumeric text. The user interface, shown generally at 300, includesan input line 301 for displaying selected characters and a first displayarea 302 for displaying a group of selectable characters. Display 300also includes a cursor 303 centrally positioned over display area 302and may be operable to display a highlighted character within the groupof characters. For example, if the first character displayed withindisplay area 302 is highlighted, cursor 303 would display the samecharacter. User interface 300 also includes scroll back soft-key 304operable to move cursor 303 to a previous position and a scroll forwardsoft-key 305 operable to move cursor 303 to a next position. A callinitiation key 306 is also provided to initiate communication using thereference displayed within input line 301. During use, user interface300 may display selectable characters based on a mode (i.e.communication mode, display mode, etc.). Characters displayed withinfirst display area 302 may be accessed using scroll back soft-key 304and/or scroll forward soft-key 306. For example, a user may scroll to acharacter displayed within the third position first display area 302 andcursor 303 may be updated accordingly.

FIG. 4 illustrates several display modes for displaying alphanumerictext within a user interface of a communication device. The displaymodes may be used with a user interface such as user interface 300 ofFIG. 3 or other devices, suggestions, or user interfaces operable todisplay the display modes of FIG. 4.

The display modes may be selected by a user, a system, a device, etc.and may be used to display alphanumeric text associated with a userselecting a key on a keypad, keyboard, or other input devices. A usermay scroll or access the display and characters and a cursor and/orhighlighted area may be updated in response to a user selecting a key orscroll button. For example, a user may access the second position of thedisplayed group of characters by depressing the same key twice.

Several examples of display modes which may be selected include avertical display mode for displaying characters in a verticalorientation, a left-justified display mode operable to display a groupof characters with a highlighted region for displaying a selectablecharacter and rotating characters sequentially within a′ statichighlighted region.

A centered display mode may be used in a similar manner as theleft-justified display mode centering a cursor over a group ofcharacters and displaying a selectable character within the cursor.Left-justified separated and centered separated display modes may alsobe used and include separating character spacing within a group ofcharacters.

A left-justified indicated display mode may be used to provide ahighlighted region positioned over a leftmost portion of the group ofcharacters. Similarly, a centered-justified indicated display mode maybe used to provide a cursor substantially centered over the group ofselectable characters. A left-justified segmented indicated display modeand a centered-segmented indicated display mode provide a group ofcharacters displayed having spaces between the groups of characters.

FIG. 5 illustrates a flow diagram of a method for displaying andselecting alphanumeric text within a user interface. The method may beused with the communication device illustrated in FIG. 1 or otherdevices or systems operable to use the method of FIG. 5. The methodbegins generally at step 500. At step 501, the method determines anoperating mode associated with a communication device. For example, themethod may determine a display mode for displaying characters within auser interface. One example may include horizontally displayingalphanumeric text within a user interface. Upon determining a mode, themethod proceeds to step 502 where the method determines if a key hasbeen selected for accessing alphanumeric text. For example a user mayselect a “#” key on a keypad to access alphanumeric text. If a user doesnot select a key, the method proceeds again to step 502. If a key hasbeen selected, the method proceeds to step 503 where the methoddetermines a group of characters associated with the selected key basedon the determined mode. For example, if a user selects the 7 key on akeypad, the method may determine the characters “p q r 7” are associatedwith the selected key and a determined mode.

Upon determining the group of characters, the method proceeds to step504 where the method displays an initial character of the charactergroup within a first portion of a user interface. The method displaysthe group of characters in a second portion of the user interface atstep 505. For example, the method may display the group of characters ashorizontally segmented centrally positioned under the first portion ofthe user interface. The method then proceeds to step 506 where themethod highlights the first character in the second portion of the userinterface.

Upon highlighting the first character in the second portion, the methodproceeds to step 507 where the method determines if the same key or ascroll button has been selected. If the same key or scroll button hasbeen selected, the method proceeds to step 508 where the method recordsa time interval between selection of the key and/or the scroll button.The method then proceeds to step 509 where the method calculates atime-out period associated with the newly recorded time interval. Forexample, the method may employ an algorithm to calculate an average timebetween selecting or scrolling the displayed characters. The method thenproceeds to step 510 where the method displays the next (or previous)character in the first portion of a user interface and to step 511 wherethe method highlights the next (or previous) character within the groupof characters displayed in the second portion of the user interface. Themethod then proceeds to step 507 where the method determines if the samekey is selected.

If at step 507, the same key is not selected (or scroll button not used)the method proceeds to step 512 where the method determines if atime-out period for displaying the character has elapsed. If thetime-out period has elapsed, the method proceeds to step 514 where themethod enters the highlighted character and to step 502 to receive thenext key selection. If at step 512, the time-out period has not elapsedthe method proceeds to step 513 to determine if a new key has beenselected. If a new key has been selected, the method proceeds to step503 where the method determines a group of characters based on theselected key and a mode. If at step 513 a new key is not selected, themethod proceeds to step 507 to determine if the same key is selected.

In one embodiment, a user may enter or select a character displayedwithin a user interface. For example, a user may select an “enter” keyoperably associated with a user interface to select a highlightedcharacter. As such, the method of FIG. 5 may be modified to update atime-out period based on the user entering the highlighted character.For example, a user may repeatedly select a key to scroll the charactersdisplayed within the user interface and subsequently select and “enter”key to select a highlighted character. An algorithm may then be used tocalculate a new time period based on the user accessing a characterwithin the group of characters and selecting a character using an“enter” key.

Although the present invention has been described with severalembodiments, a myriad of changes, variations, alterations,transformations, and modifications may be suggested to one skilled inthe art, and it is intended that the present invention encompass suchchanges, variations, alterations, transformations, and modifications asfall within the scope of the appended claims.

What is claimed is:
 1. A method, comprising: receiving a first keyselection; determining a context of the first key selection; selecting agroup of characters based on the determined context and associated withthe first key selection; and displaying the group of characters within afirst portion of a user interface.
 2. The method of claim 1, wherein thecontext is a communication mode.
 3. The method of claim 2, wherein: thecommunication mode is a mode accessing a URL; and the group ofcharacters based on the determined context is associated with the URLcommunication address.
 4. The method of claim 1, further comprising:receiving a second key selection, the second key selection associatedwith the displayed group of characters; determining a second context ofthe second key selection, the second context being different than thecontext of the first key selection; selecting a second group ofcharacters based on the second determined context and associated withthe second key selection; and displaying the second group of characters.5. The method of claim 1, further comprising adjusting a display mode ofthe first portion of the user interface based on the determined context.6. The method of claim 1, wherein the group of characters displayedwithin a first portion is only a first portion of the group ofcharacters.
 7. The method of claim 6, further comprising: determining anamount of time that has elapsed since the first key selection; and whenthe amount of time is greater than a time-out period, automaticallydisplaying a second portion of the group of characters.
 8. A userinterface, comprising: a processor operable to: receive a first keyselection; determine a context of the first key selection; and select agroup of characters based on the determined context and associated withthe first key selection; and a first display portion configured todisplay the group of characters within a first portion of the userinterface.
 9. The user interface of claim 8, wherein the context is acommunication mode.
 10. The user interface of claim 9, wherein: thecommunication mode is a mode accessing a URL; and the group ofcharacters based on the determined context is associated with the URLcommunication address.
 11. The user of interface of claim 8, wherein:the processor is further operable to: receive a second key selection,the second key selection associated with the displayed group ofcharacters; determine a second context of the second key selection, thesecond context being different than the context of the first keyselection; and select a second group of characters based on the seconddetermined context and associated with the second key selection; and thefirst display portion is further configured to display the second groupof characters.
 12. The user interface of claim 8, wherein the process isfurther operable to adjust a display mode of the first portion of theuser interface based on the determined context.
 13. The user interfaceof claim 8, wherein the group of characters displayed within a firstportion is only a first portion of the group of characters.
 14. The userinterface claim 13, wherein: the processor is further operable todetermine an amount of time that has elapsed since the first keyselection; and the first display portion is further configured toautomatically display a second portion of the group of characters whenthe amount of time is greater than a time-out period.
 15. Anon-transitory computer-readable medium comprising logic, the logic,when executed by a processor, operable to: receive a first keyselection; determine a context of the first key selection; select agroup of characters based on the determined context and associated withthe first key selection; and display the group of characters within afirst portion of a user interface.
 16. The computer-readable medium ofclaim 15, wherein the context is a communication mode.
 17. Thecomputer-readable medium of claim 16, wherein: the communication mode isa mode accessing a URL; and the group of characters based on thedetermined context is associated with the URL communication address. 18.The computer-readable medium of claim 15, wherein the logic is furtheroperable to: receive a second key selection, the second key selectionassociated with the displayed group of characters; determine a secondcontext of the second key selection, the second context being differentthan the context of the first key selection; select a second group ofcharacters based on the second determined context and associated withthe second key selection; and display the second group of characters.19. The computer-readable medium of claim 15, wherein the logic isfurther operable to adjust a display mode of the first portion of theuser interface based on the determined context.
 20. Thecomputer-readable medium of claim 15, wherein the group of charactersdisplayed within a first portion is only a first portion of the group ofcharacters; and the logic is further operable to: determine an amount oftime that has elapsed since the first key selection; and automaticallydisplay a second portion of the group of characters when the amount oftime is greater than a time-out period.